package com.xhj.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.util.Date;
import java.io.Serializable;
import java.util.List;

/**
 * 权限(Permission)实体类
 *
 * @author makejava
 * @since 2021-03-15 12:26:22
 */
@TableName("permission")
@Data
public class Permission implements Serializable {
    private static final long serialVersionUID = 988749714004774003L;
    /**
    * 编号
    */
    @TableId(type = IdType.ID_WORKER_STR)
    private String id;
    /**
    * 所属上级
    */
    private String pid;
    /**
    * 名称
    */
    private String name;
    /**
    * 类型(1:菜单,2:按钮)
    */
    private Integer type;
    /**
    * 权限值
    */
    private String permissionValue;
    /**
    * 访问路径
    */
    private String path;
    /**
    * 组件路径
    */
    private String component;
    /**
    * 图标
    */
    private String icon;
    /**
    * 状态(0:禁止,1:正常)
    */
    private Integer status;
    /**
    * 逻辑删除 1（true）已删除， 0（false）未删除
    */
    @TableLogic
    private Integer isDeleted;
    /**
    * 创建时间
    */
    @TableField(fill = FieldFill.INSERT)
    private Date gmtCreate;
    /**
    * 更新时间
    */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date gmtModified;
    /**
     * 层级
     */
    @TableField(exist = false)
    private Integer level;
    /**
     * 下级
     */
    @TableField(exist = false)
    private List<Permission> children;
    /**
     * 是否选中
     */
    @TableField(exist = false)
    private boolean isSelect;

}